The invention relates to digital data storage and retrieval, and, more particularly, to retrieving binary data conveyed by an incident signal from a mobile carrier such as a digital disk.
Digital disks, especially compact disks (CDs) (e.g., Read Only Memory compact disks (xe2x80x9cCDROMsxe2x80x9d)) and multifunction digital disks (e.g., Digital Video Disks (or xe2x80x9cDVDsxe2x80x9d)) are used for storing digital data in a compressed form. A digital disk includes a single spiral track whose relief is representative of the binary information stored on the track of the disk. The track of the disk is illuminated by an incident optical beam (e.g., a laser beam) and several photodetectors (e.g., four) detect the reflection of the light beam on the disk. The optical pickup formed by the photodetectors then delivers four elementary signals from the four photodetectors. The four elementary signals are also used for carrying out a slaving of the optical beam to the track of the disk. An overall or useful signal equal to the sum of the four elementary signals is also delivered by the optical pickup, from which the binary information read on the track may be extracted.
The coding of the binary information on the disk is standardized and well known to those of skill in the art (eg., RLL (2,10) coding). The length of the hollows and of the bumps present on the spiral track of the disk determines the number of logic 0 values flanked by two logic 1 values. Also, these lengths of hollows and bumps are all multiples of a base length commonly referred to by the designation xe2x80x9c1T.xe2x80x9d By way of example, the value of +he base length 1T is equal to 0.64 microns for a OVD disk and 1.6 microns for a CD-ROM.
When the digital disk is rotating, the useful signal containing the binary data, also referred to as the xe2x80x9cincident signalxe2x80x9d, herein includes a succession of transitions whose spacings are representative of the lengths of the pulses. Also, the higher the speed of rotation of the disk, the smaller the spacings between the transitions. Extracting the binary data conveyed by the incident signal thus includes detecting the transitions of the incident signal, calculating the distances separating the successive transitions, and determining the values of the data from the calculated distances.
At present, a digital phase-locked loop is used for extracting the binary data which, for each speed of rotation, uses a predefined value of a base distance corresponding to the base length (1T, also referred to as the xe2x80x9cperiod 1Txe2x80x9d). Furthermore, a phase-locked loop generally includes a digital filter, and the coefficients of the filter may depend upon on the speed of rotation. Of course, the linear rotation speed of a portion of a given track will vary depending upon on the distance of the portion from the center of the disk.
Additionally, when the laser beam is instructed (by the microprocessor of a computer, for example) to perform a displacement jump from one portion of a track to another portion of the track situated, for example, further out on the disk, the correct locking of the phase-locked loop requires the use of the predefined stored value of the base distance (1T), which corresponds to the new linear rotation value. Furthermore, the coefficients of the filter must likewise be modified by using a preprogrammed set of coefficients corresponding to the new rotation speed. Yet, if a positioning error is committed (i.e., if the information given by the photodetector leads to poor actual locating of the track portion and hence to a poor estimate of the new linear rotation speed), the phase-locked loop will use an inappropriate value for the new period 1T, as well as an inappropriate set of filter coefficients. Also, this may lead to a much longer locking of the phase-locked loop, and consequently to a much greater latency time before it is possible to extract correct data. In the worst case, locking is not performed and the disk is then ejected from the carrier.
It is therefore an object of the present invention to provide a method for extracting binary data conveyed by an incident signal that obviates the above problems.
According to the invention, a method for extracting binary data conveyed by an incident signal is provided where the binary data is coded in the form of a pulsatile signal whose pulses have variable lengths which are multiples of a base pulse length (period 1T). The incident signal includes a succession of transitions whose spacings are representative of the lengths of the pulses. The process may include detecting the transitions of the incident signal, calculating the distances separating the successive transitions, and determining the values of the data from the calculated distances.
More particularly, the method may include an initialization phase wherein the value of a base distance corresponding to the base pulse length is determined from the contents of the incident signal. The method may also include an extraction phase in which a set of reference values corresponding respectively to various multiples of the determined base distance (1T, 2T, . . . , 14T in the case of a DVD disk) is formulated. In certain cases a zero reference value corresponding to 0T may be stored. For a calculated current distance, the values of the data corresponding to this current distance are determined from a comparison of the reference values and a current corrected distance. The current corrected distance is formulated from the current calculated distance, from a comparison error relating to the previous calculated distance, and from the filtered comparison error.
Stated otherwise, the invention involves estimating the value of the base distance from the actual content of the incident signal, thereby intrinsically taking into account the rotation speed. In contrast, prior art methods typically require predefined and preprogrammed values corresponding to this base distance as a function of the various possible rotation values of the disk.
Furthermore, in the extraction phase the phase error may be directly corrected on the detected transitions of the signal (i.e., in tempo with the detected transitions) rather than in tempo with the signal sampling frequency, as in the prior art. Therefore, the coefficients of the filter of the phase-locked loop according to the invention become independent of the rotation speed of the disk and depend only on the physical characteristics of the disk, such as the inaccuracies of etching the track, for example. Thus, correction of the phase error is much more effective and rapid. Consequently, the latency duration for obtaining correct extracted binary data is also reduced.
The estimation of the period 1T may advantageously be performed algebraically. More particularly, according to one embodiment of the invention, the initialization phase may include at least one first subphase including the formulation of at least one first threshold distance from the current maximum calculated distance and corresponding to a first threshold length (e.g., 3.5T) situated between first and second successive multiples of the base length (e.g., 3T and 4T). This first subphase may also include comparing each current calculated distance with the first threshold distance, adding a first predetermined number (e.g., 21) of values of current calculated distances less than the first threshold distance, and dividing the sum thus obtained by a first predetermined divisor (for example 64) to obtain an estimated value of the base distance.
Such an initialization phase allows very rapid estimation of the value of the period 1T, typically within a duration equal of about two frames, i.e., 120 microseconds for a rotation speed of 1xc3x97 (where a rotation speed of 1xc3x97 corresponds to 4 m/second). Indeed, it has been observed that 70% of the logic values of the data transmitted corresponded to multiples 3T and 4T. Also, the combination of the particular characteristics of this initialization phase, with the estimation of the value of the period 1T from the actual content of the incident signal, makes it possible to obtain this rapidity of estimation.
If one wishes to obtain further accuracy in the estimated value of the base distance obtained (corresponding to the value of the period 1T), the initialization phase may include a second subphase, subsequent to the first subphase, in which a second threshold distance and a third threshold distance greater than the second threshold distance are formulated from the value of the base distance obtained on completing the first subphase. The second and third threshold distances correspond respectively to a first (e.g., 18T/4) and a second (e.g., 14T/4) threshold length flanking the second multiple of the base length on either side. Each current calculated distance is then compared with the second threshold distance and with the third threshold distance. A second predetermined number of values of current calculated distances (e.g., 32 values) between the second threshold distance and the third threshold distance may be summed. Also, the sum obtained may then be divided by a second predetermined divisor (e.g., 128) to obtain a new estimated value of the base distance. The foregoing alternative embodiment also makes it possible to estimate the value of the period 1T when the signal contains no distance corresponding to values 3T, for example.
In the extraction phase, the reference values may respectively include the integer multiples of the determined base distance between the base distance and a maximum multiple of this base distance. This maximum multiple corresponds to to a maximum multiple of the base length which can be contained in the incident signal (e.g., 14 in the case of a DVD and 11 in the case of a CD-ROM). Stated otherwise, in the case of a DVD, the values of 1T to 14T will be stored as reference values. The difference between the current corrected distance and the reference values is established and the minimum difference lying within a predetermined comparison range (e.g., xe2x88x920.5T to +0.5T). The length of the pulse coding the values of the data corresponding to the current calculated distance thus corresponds to the multiple of the base length associated with the reference value having led to the selected minimum difference.
The pulsatile signal may include synchronization pulses whose occurrences are mutually spaced by a synchronization length equal to a predetermined fourth or synchronization multiple of the base length. For example, in the case of a DVD, the synchronization pulses have a length of 14T and their temporal occurrences are separated by a distance of 1488T. Two synchronization pulses may flank a stream of variable length pulses coding a data stream.
In yet another embodiment of the present invention, in the extraction phase a check of the value of the base distance may be performed by detecting the successive synchronization pulses and detecting the contents of the incident signal between two successive occurrences of a synchronization pulse. Thus, an additional check of the proper estimation of the value of the base length is provided.
Furthermore, the calculated distances corresponding to the synchronization pulses may be detected, and the sum of the multiples corresponding to the calculated distances delivered since the occurrence of a synchronization pulse up to a next synchronization pulse may be obtained. If this sum lies within a predetermined neighborhood or range (e.g., between 1474 and 1503) of the fourth multiple (1488 in the case of a DVD), the sum of the calculated distances which have been delivered between the two synchronization pulses is divided by the fourth multiple to obtain a new estimated value of the base distance.
According to the invention, a device for extracting binary data conveyed by an incident signal is also provided. The binary data may be coded in the form of a pulsatile signal whose pulses have variable lengths which are multiples of a base pulse length, and the incident signal may include a succession of transitions having distances therebetween representative of the lengths of the pulses. The device may include an input for receiving the incident signal, at least one detector or detection means for detecting the transitions of the incident signal, a calculating circuit for calculating the distances separating the successive transitions, and a processor or processing means for determining the values of the data from the calculated distances.
The process may include a preprocessing circuit or means for determining from the content of the incident signal the value of a base distance corresponding to the base pulse length and for storing this value in a register. The processing means may also include an extraction circuit or means for formulating a set of reference values corresponding respectively to various multiples of the base distance stored in the register. The extraction means may also form a correction loop that, for a calculated current distance, determines the values of the data corresponding to the current distance from a comparison between the reference values (1T to 14T, for example) and a current corrected distance formulated from the current calculated distance, from a comparison error relating to the previous calculated distance, and from the filtered comparison error. Additionally, the device may include a controller or control means for activating the preprocessing means and the extraction means.
The correction loop may include a first circuit or means for establishing a difference between the current corrected distance and each of the reference values (1T-14T, for example), a second circuit or means for selecting the minimum difference lying in a predetermined comparison range (e.g., xe2x88x920.5T to +0.5T), and a filter connected to the output of the second means. Furthermore, the correction loop may also include a third circuit or corrector means having a first input receiving each current calculated distance, a second input receiving an output of the second means delayed by a first delay, a third input receiving an output of the filter delayed by a second delay, and an output connected to an input of the first means and delivering the current corrected distance, which is equal to the sum of the current calculated distance and the minimum difference minus the value of the output delivered by the filter. The correction loop may be regulated in synchronization with the transitions of the incident signal.
In some instances the pulsatile signal may include synchronization pulses whose occurrences are mutually spaced by a synchronization length equal to a predetermined multiple (e.g., 1488) of the base length and two synchronization pulses flanking a stream of variable length pulses coding a given stream. In such a case, the extraction means may include a checking circuit or means for checking the value of the base distance by detecting successive synchronization pulses (14T, for example) and detecting the contents of the incident signal between two successive occurrences of a synchronization pulse.
The preprocessing circuit or means may include a formulating circuit or means for formulating at least one first threshold distance from the current maximum calculated distance corresponding to a first threshold length between first (e.g., 3) and second (e.g., 4) successive multiples of the base length, a comparison means or comparator for comparing each current calculated distance with the first threshold distance, and a summation means or adder for adding a first predetermined number (e.g., 21) of values of current calculated distances less than the first threshold distance (3.5T, for example) to provide a sum, and a division circuit or divisor means for dividing the sum obtained by a first predetermined divisor (e.g., 64) to obtain an estimated value of the base distance. The device may be a digital disk reader such as a DVD disk reader, for example.